{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "50ca8493-e877-4492-bea7-d62366feb273",
   "metadata": {
    "tags": []
   },
   "source": [
    "# Basic MIMO Simulations\n",
    "In this notebook, you will learn how to setup simulations of MIMO transmissions over\n",
    "a flat-fading channel.\n",
    "\n",
    "Here is a schematic diagram of the system model with all required components:"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a81e7722-9627-4dfe-8d95-5124bf834c1d",
   "metadata": {},
   "source": [
    "![System Model]()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "aa46d4da-d921-49d1-9e8f-2a67ab03c8b9",
   "metadata": {},
   "source": [
    "You will learn how to:\n",
    "\n",
    "* Use the FastFadingChannel class\n",
    "* Apply spatial antenna correlation\n",
    "* Implement LMMSE detection with perfect channel knowledge\n",
    "* Run BER/SER simulations\n",
    "\n",
    "We will first walk through the configuration of all components of the system model, before building an end-to-end model which will allow you to run efficiently simulations with different parameter settings."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "da31eafd-c45b-43ec-824d-f1701810a132",
   "metadata": {},
   "source": [
    "## Table of Contents\n",
    "* [GPU Configuration and Imports](#GPU-Configuration-and-Imports)\n",
    "* [Simple uncoded transmission](#Simple-uncoded-transmission)\n",
    "    * [Adding spatial correlation](#Adding-spatial-correlation)\n",
    "* [Extension to channel coding](#Extension-to-channel-coding)\n",
    "    * [BER simulations using a Sionna Block](#BER-simulations-using-a-Sionna-Block)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e79b7b0a-6beb-45d3-a95e-e22c3bea3527",
   "metadata": {
    "tags": []
   },
   "source": [
    "### GPU Configuration and Imports"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "e72fdc97-805a-466a-a098-113106f8a9b9",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:21.221031Z",
     "iopub.status.busy": "2025-03-11T01:42:21.220376Z",
     "iopub.status.idle": "2025-03-11T01:42:23.683628Z",
     "shell.execute_reply": "2025-03-11T01:42:23.682708Z"
    }
   },
   "outputs": [],
   "source": [
    "import os\n",
    "if os.getenv(\"CUDA_VISIBLE_DEVICES\") is None:\n",
    "    gpu_num = 0 # Use \"\" to use the CPU\n",
    "    os.environ[\"CUDA_VISIBLE_DEVICES\"] = f\"{gpu_num}\"\n",
    "os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3'\n",
    "\n",
    "# Import Sionna\n",
    "try:\n",
    "    import sionna.phy\n",
    "except ImportError as e:\n",
    "    import sys\n",
    "    if 'google.colab' in sys.modules:\n",
    "       # Install Sionna in Google Colab\n",
    "       print(\"Installing Sionna and restarting the runtime. Please run the cell again.\")\n",
    "       os.system(\"pip install sionna\")\n",
    "       os.kill(os.getpid(), 5)\n",
    "    else:\n",
    "       raise e\n",
    "\n",
    "# Configure the notebook to use only a single GPU and allocate only as much memory as needed\n",
    "# For more details, see https://www.tensorflow.org/guide/gpu\n",
    "import tensorflow as tf\n",
    "gpus = tf.config.list_physical_devices('GPU')\n",
    "if gpus:\n",
    "    try:\n",
    "        tf.config.experimental.set_memory_growth(gpus[0], True)\n",
    "    except RuntimeError as e:\n",
    "        print(e)\n",
    "# Avoid warnings from TensorFlow\n",
    "tf.get_logger().setLevel('ERROR')\n",
    "\n",
    "# Set random seed for reproducability\n",
    "sionna.phy.config.seed = 42"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "6a999116-9ff6-4766-85f3-acaad6a7ad45",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:23.687682Z",
     "iopub.status.busy": "2025-03-11T01:42:23.687396Z",
     "iopub.status.idle": "2025-03-11T01:42:23.698764Z",
     "shell.execute_reply": "2025-03-11T01:42:23.697860Z"
    }
   },
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "from sionna.phy import Block\n",
    "from sionna.phy.utils import ebnodb2no, compute_ser, compute_ber, PlotBER\n",
    "from sionna.phy.channel import FlatFadingChannel, KroneckerModel\n",
    "from sionna.phy.channel.utils import exp_corr_mat\n",
    "from sionna.phy.mimo import lmmse_equalizer\n",
    "from sionna.phy.mapping import SymbolDemapper, Mapper, Demapper, BinarySource, QAMSource\n",
    "from sionna.phy.fec.ldpc.encoding import LDPC5GEncoder\n",
    "from sionna.phy.fec.ldpc.decoding import LDPC5GDecoder"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "651c6928-5663-4c2b-89e8-877b94c14947",
   "metadata": {},
   "source": [
    "## Simple uncoded transmission\n",
    "\n",
    "We will consider point-to-point transmissions from a transmitter with `num_tx_ant` antennas to a receiver\n",
    "with `num_rx_ant` antennas. The transmitter applies no precoding and sends independent data stream from each antenna.\n",
    "\n",
    "Let us now generate a batch of random transmit vectors of random 16QAM symbols:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "63446495-cf9d-442a-8a6d-cfddee569eb7",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:23.702688Z",
     "iopub.status.busy": "2025-03-11T01:42:23.702327Z",
     "iopub.status.idle": "2025-03-11T01:42:24.066910Z",
     "shell.execute_reply": "2025-03-11T01:42:24.066232Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1024, 4)\n"
     ]
    }
   ],
   "source": [
    "num_tx_ant = 4\n",
    "num_rx_ant = 16\n",
    "num_bits_per_symbol = 4\n",
    "batch_size = 1024\n",
    "qam_source = QAMSource(num_bits_per_symbol)\n",
    "x = qam_source([batch_size, num_tx_ant])\n",
    "print(x.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c536ec87-40bf-4590-88db-151ae7ac8de7",
   "metadata": {},
   "source": [
    "Next, we will create an instance of the `FlatFadingChannel` class to simulate transmissions over\n",
    "an i.i.d. Rayleigh fading channel. The channel will also add AWGN with variance `no`.\n",
    "As we will need knowledge of the channel realizations for detection, we activate the `return_channel` flag."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "35d7a3cd-e2ca-48bd-a77c-8bc8939f9624",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:24.070692Z",
     "iopub.status.busy": "2025-03-11T01:42:24.070497Z",
     "iopub.status.idle": "2025-03-11T01:42:24.192738Z",
     "shell.execute_reply": "2025-03-11T01:42:24.191898Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1024, 16)\n",
      "(1024, 16, 4)\n"
     ]
    }
   ],
   "source": [
    "channel = FlatFadingChannel(num_tx_ant, num_rx_ant, add_awgn=True, return_channel=True)\n",
    "no = 0.2 # Noise variance of the channel\n",
    "\n",
    "# y and h are the channel output and channel realizations, respectively.\n",
    "y, h = channel(x, no)\n",
    "print(y.shape)\n",
    "print(h.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fd565377-d54c-49a8-8fe1-6ca7cceedec7",
   "metadata": {},
   "source": [
    "Using the perfect channel knowledge, we can now implement an LMMSE equalizer to compute soft-symbols.\n",
    "The noise covariance matrix in this example is just a scaled identity matrix which we need to provide to the\n",
    "`lmmse_equalizer`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "a05fce47-7361-4e68-a490-983f654c1dd1",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:24.196520Z",
     "iopub.status.busy": "2025-03-11T01:42:24.196318Z",
     "iopub.status.idle": "2025-03-11T01:42:24.254820Z",
     "shell.execute_reply": "2025-03-11T01:42:24.254055Z"
    }
   },
   "outputs": [],
   "source": [
    "s = tf.cast(no*tf.eye(num_rx_ant, num_rx_ant), y.dtype)\n",
    "x_hat, no_eff = lmmse_equalizer(y, h, s)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "85d71a4f-554f-4e19-905a-6b76e8306d7e",
   "metadata": {},
   "source": [
    "Let us know have a look at the transmitted and received constellations:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "6339a375-a4b1-45de-9cf6-c88e2e007ca8",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:24.258890Z",
     "iopub.status.busy": "2025-03-11T01:42:24.258593Z",
     "iopub.status.idle": "2025-03-11T01:42:24.412570Z",
     "shell.execute_reply": "2025-03-11T01:42:24.411951Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.axes().set_aspect(1.0)\n",
    "plt.scatter(np.real(x_hat), np.imag(x_hat));\n",
    "plt.scatter(np.real(x), np.imag(x));"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f17acbe6-aaf2-470b-a436-e46a4c65f477",
   "metadata": {},
   "source": [
    "As expected, the soft symbols `x_hat` are scattered around the 16QAM constellation points.\n",
    "The equalizer output `no_eff` provides an estimate of the effective noise variance for each soft-symbol."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "402532df-487f-46f6-aa79-0356bc7fffff",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:24.416639Z",
     "iopub.status.busy": "2025-03-11T01:42:24.416337Z",
     "iopub.status.idle": "2025-03-11T01:42:24.420518Z",
     "shell.execute_reply": "2025-03-11T01:42:24.419861Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1024, 4)\n"
     ]
    }
   ],
   "source": [
    "print(no_eff.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3cf18ca7-ed1d-4b93-a26f-9afe93923a24",
   "metadata": {},
   "source": [
    "One can confirm that this estimate is correct by comparing the MSE between the transmitted and equalized symbols against the average estimated effective noise variance:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "633d5bcc-fa6b-4997-a199-a897ee409581",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:24.423366Z",
     "iopub.status.busy": "2025-03-11T01:42:24.423018Z",
     "iopub.status.idle": "2025-03-11T01:42:24.427968Z",
     "shell.execute_reply": "2025-03-11T01:42:24.427333Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.015844796\n",
      "0.016486911\n"
     ]
    }
   ],
   "source": [
    "noise_var_eff = np.var(x-x_hat)\n",
    "noise_var_est = np.mean(no_eff)\n",
    "print(noise_var_eff)\n",
    "print(noise_var_est)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3ac3d9e7-ac47-4135-9b6a-f08251fbb41d",
   "metadata": {},
   "source": [
    "The last step is to make hard decisions on the symbols and compute the SER:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "5fce0538-545b-42fb-9d9d-7c3b84f6695f",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:24.431109Z",
     "iopub.status.busy": "2025-03-11T01:42:24.430720Z",
     "iopub.status.idle": "2025-03-11T01:42:24.865367Z",
     "shell.execute_reply": "2025-03-11T01:42:24.864722Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<tf.Tensor: shape=(), dtype=float64, numpy=0.00244140625>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "symbol_demapper = SymbolDemapper(\"qam\", num_bits_per_symbol, hard_out=True)\n",
    "\n",
    "# Get symbol indices for the transmitted symbols\n",
    "x_ind = symbol_demapper(x, no)\n",
    "\n",
    "# Get symbol indices for the received soft-symbols\n",
    "x_ind_hat = symbol_demapper(x_hat, no)\n",
    "\n",
    "compute_ser(x_ind, x_ind_hat)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "400ab776-d452-4933-a1c1-70934b50e594",
   "metadata": {},
   "source": [
    "### Adding spatial correlation\n",
    "\n",
    "It is very easy add spatial correlation to the `FlatFadingChannel` using the `SpatialCorrelation` class.\n",
    "We can, e.g., easily setup a Kronecker (`KroneckerModel`) (or two-sided) correlation model using exponetial correlation matrices (`exp_corr_mat`)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "43b933a9-611a-4994-be08-eb0e5aff664e",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:24.868842Z",
     "iopub.status.busy": "2025-03-11T01:42:24.868545Z",
     "iopub.status.idle": "2025-03-11T01:42:25.603444Z",
     "shell.execute_reply": "2025-03-11T01:42:25.602473Z"
    }
   },
   "outputs": [],
   "source": [
    "# Create transmit and receive correlation matrices\n",
    "r_tx = exp_corr_mat(0.4, num_tx_ant)\n",
    "r_rx = exp_corr_mat(0.9, num_rx_ant)\n",
    "\n",
    "# Add the spatial correlation model to the channel\n",
    "channel.spatial_corr = KroneckerModel(r_tx, r_rx)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8079d510-69de-48de-a2fc-4eb32d4bac0f",
   "metadata": {},
   "source": [
    "Next, we can validate that the channel model applies the desired spatial correlation by creating a large batch of channel realizations from which we compute the empirical transmit and receiver covariance matrices:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "9b5c6273-0eb2-4065-82b2-64af71accff8",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:25.607044Z",
     "iopub.status.busy": "2025-03-11T01:42:25.606847Z",
     "iopub.status.idle": "2025-03-11T01:42:25.731387Z",
     "shell.execute_reply": "2025-03-11T01:42:25.730534Z"
    }
   },
   "outputs": [],
   "source": [
    "h = channel.generate(1000000)\n",
    "\n",
    "# Compute empirical covariance matrices\n",
    "r_tx_hat = tf.reduce_mean(tf.matmul(h, h, adjoint_a=True), 0)/num_rx_ant\n",
    "r_rx_hat = tf.reduce_mean(tf.matmul(h, h, adjoint_b=True), 0)/num_tx_ant\n",
    "\n",
    "# Test that the empirical results match the theory\n",
    "assert(np.allclose(r_tx, r_tx_hat, atol=1e-2))\n",
    "assert(np.allclose(r_rx, r_rx_hat, atol=1e-2))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5de3bbe1-06ba-4d84-9f38-c4e8f0c03d24",
   "metadata": {},
   "source": [
    "Now, we can transmit the same symbols `x` over the channel with spatial correlation and compute the SER:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "359d79ee-d3f4-48bc-aac6-fd9846515c0c",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:25.734970Z",
     "iopub.status.busy": "2025-03-11T01:42:25.734688Z",
     "iopub.status.idle": "2025-03-11T01:42:25.783532Z",
     "shell.execute_reply": "2025-03-11T01:42:25.782864Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<tf.Tensor: shape=(), dtype=float64, numpy=0.12060546875>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y, h = channel(x, no)\n",
    "x_hat, no_eff = lmmse_equalizer(y, h, s)\n",
    "x_ind_hat = symbol_demapper(x_hat, no)\n",
    "compute_ser(x_ind, x_ind_hat)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5d76e543-6d2e-43b8-afb2-3f5d0b1dd54a",
   "metadata": {},
   "source": [
    "The result cleary show the negative effect of spatial correlation in this setting.\n",
    "You can play around with the `a` parameter defining the exponential correlation matrices and see its impact on the SER. "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b3376816-8f98-409d-b0c5-c409baeef7aa",
   "metadata": {},
   "source": [
    "## Extension to channel coding\n",
    "So far, we have simulated uncoded symbol transmissions. With a few lines of additional code, we can extend what we have done to coded BER simulations. We need the following additional components:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "74723ddd-7e2e-4006-a4c2-6bc6c9d4bf38",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:25.787724Z",
     "iopub.status.busy": "2025-03-11T01:42:25.787395Z",
     "iopub.status.idle": "2025-03-11T01:42:25.856220Z",
     "shell.execute_reply": "2025-03-11T01:42:25.855374Z"
    }
   },
   "outputs": [],
   "source": [
    "n = 1024 # codeword length\n",
    "k = 512  # number of information bits per codeword\n",
    "coderate = k/n # coderate\n",
    "batch_size = 32\n",
    "\n",
    "binary_source = BinarySource()\n",
    "encoder = LDPC5GEncoder(k, n)\n",
    "decoder = LDPC5GDecoder(encoder, hard_out=True)\n",
    "mapper = Mapper(\"qam\", num_bits_per_symbol)\n",
    "demapper = Demapper(\"app\", \"qam\", num_bits_per_symbol)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1871330c-cb55-4ace-856b-9fe2d8375ea8",
   "metadata": {},
   "source": [
    "Next we need to generate random QAM symbols through mapping of coded bits.\n",
    "Reshaping is required to bring `x` into the needed shape."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "ae31038f-a0a2-4e84-88f9-aa5bd28166c2",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:25.859073Z",
     "iopub.status.busy": "2025-03-11T01:42:25.858859Z",
     "iopub.status.idle": "2025-03-11T01:42:26.528185Z",
     "shell.execute_reply": "2025-03-11T01:42:26.527478Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(8192, 4)\n"
     ]
    }
   ],
   "source": [
    "b = binary_source([batch_size, num_tx_ant, k])\n",
    "c = encoder(b)\n",
    "x = mapper(c)\n",
    "x_ind = symbol_demapper(x, no) # Get symbol indices for SER computation later on\n",
    "shape = tf.shape(x)\n",
    "x = tf.reshape(x, [-1, num_tx_ant])\n",
    "print(x.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e925ebfa-fa9e-4a02-812d-40eb7e990f00",
   "metadata": {},
   "source": [
    "We will now transmit the symbols over the channel:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "8c5a0767-9896-4eab-88cc-8859273a8cc5",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:26.532154Z",
     "iopub.status.busy": "2025-03-11T01:42:26.531929Z",
     "iopub.status.idle": "2025-03-11T01:42:26.561844Z",
     "shell.execute_reply": "2025-03-11T01:42:26.561053Z"
    }
   },
   "outputs": [],
   "source": [
    "y, h = channel(x, no)\n",
    "x_hat, no_eff = lmmse_equalizer(y, h, s)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b849b3db-cace-4938-987c-57f1737a5a43",
   "metadata": {},
   "source": [
    "And then demap the symbols to LLRs prior to decoding them. Note that we need to bring `x_hat` and `no_eff` back to the desired shape for decoding."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "85d3f599-b554-451e-ad73-765c997c1ba1",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:26.565674Z",
     "iopub.status.busy": "2025-03-11T01:42:26.565462Z",
     "iopub.status.idle": "2025-03-11T01:42:26.570505Z",
     "shell.execute_reply": "2025-03-11T01:42:26.569694Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "TensorShape([1024, 4])"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "x_ind_hat.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "2b988637-ba1c-4ca5-aabe-e400f600a807",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:26.573275Z",
     "iopub.status.busy": "2025-03-11T01:42:26.573010Z",
     "iopub.status.idle": "2025-03-11T01:42:29.221477Z",
     "shell.execute_reply": "2025-03-11T01:42:29.220599Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Uncoded SER : 0.120452880859375\n",
      "Coded BER : 0.0\n"
     ]
    }
   ],
   "source": [
    "x_hat = tf.reshape(x_hat, shape)\n",
    "no_eff = tf.reshape(no_eff, shape)\n",
    "\n",
    "llr = demapper(x_hat, no_eff)\n",
    "b_hat = decoder(llr)\n",
    "\n",
    "x_ind_hat = symbol_demapper(x_hat, no)\n",
    "ber = compute_ber(b, b_hat).numpy()\n",
    "print(\"Uncoded SER : {}\".format(compute_ser(x_ind, x_ind_hat)))\n",
    "print(\"Coded BER : {}\".format(compute_ber(b, b_hat)))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "26e4d3bd-d707-478e-924f-3473e1cc0b7c",
   "metadata": {},
   "source": [
    "Despite the fairly high SER, the BER is very low, thanks to the channel code."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8b163543-2e72-49d3-9369-b851a6fb678e",
   "metadata": {},
   "source": [
    "### BER simulations using a Sionna Block"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "54aaf845-81c7-4573-ae36-14892c258c5f",
   "metadata": {},
   "source": [
    "Next, we will wrap everything that we have done so far in a Sionna Block for convenient BER simulations and comparison of system parameters.\n",
    "Note that we use the `@tf.function(jit_compile=True)` decorator which will speed-up the simulations tremendously. See [https://www.tensorflow.org/guide/function](https://www.tensorflow.org/guide/function) for further information."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "07908bb6-6936-4d07-bb90-804f3a17a23b",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:29.224346Z",
     "iopub.status.busy": "2025-03-11T01:42:29.224122Z",
     "iopub.status.idle": "2025-03-11T01:42:29.233952Z",
     "shell.execute_reply": "2025-03-11T01:42:29.232944Z"
    }
   },
   "outputs": [],
   "source": [
    "class Model(Block):\n",
    "    def __init__(self, spatial_corr=None):\n",
    "        super().__init__()\n",
    "        self.n = 1024\n",
    "        self.k = 512\n",
    "        self.coderate = self.k/self.n\n",
    "        self.num_bits_per_symbol = 4\n",
    "        self.num_tx_ant = 4\n",
    "        self.num_rx_ant = 16\n",
    "        self.binary_source = BinarySource()\n",
    "        self.encoder = LDPC5GEncoder(self.k, self.n)\n",
    "        self.mapper = Mapper(\"qam\", self.num_bits_per_symbol)\n",
    "        self.demapper = Demapper(\"app\", \"qam\", self.num_bits_per_symbol)\n",
    "        self.decoder = LDPC5GDecoder(self.encoder, hard_out=True)\n",
    "        self.channel = FlatFadingChannel(self.num_tx_ant,\n",
    "                                         self.num_rx_ant,\n",
    "                                         spatial_corr=spatial_corr,\n",
    "                                         add_awgn=True,\n",
    "                                         return_channel=True)\n",
    "\n",
    "    @tf.function(jit_compile=True)\n",
    "    def call(self, batch_size, ebno_db):\n",
    "        b = self.binary_source([batch_size, self.num_tx_ant, self.k])\n",
    "        c = self.encoder(b)\n",
    "\n",
    "        x = self.mapper(c)\n",
    "        shape = tf.shape(x)\n",
    "        x = tf.reshape(x, [-1, self.num_tx_ant])\n",
    "\n",
    "        no = ebnodb2no(ebno_db, self.num_bits_per_symbol, self.coderate)\n",
    "        no *= np.sqrt(self.num_rx_ant)\n",
    "\n",
    "        y, h = self.channel(x, no)\n",
    "        s = tf.complex(no*tf.eye(self.num_rx_ant, self.num_rx_ant), 0.0)\n",
    "\n",
    "        x_hat, no_eff = lmmse_equalizer(y, h, s)\n",
    "\n",
    "        x_hat = tf.reshape(x_hat, shape)\n",
    "        no_eff = tf.reshape(no_eff, shape)\n",
    "\n",
    "        llr = self.demapper(x_hat, no_eff)\n",
    "        b_hat = self.decoder(llr)\n",
    "\n",
    "        return b,  b_hat"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "78a7c2a1-2a12-4bd8-93a6-ae1f54b1717d",
   "metadata": {},
   "source": [
    "We can now instantiate different version of this model and use the `PlotBer` class for easy Monte-Carlo simulations."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "71d23857-6ba5-40de-adfd-fb20969d9b96",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:29.236552Z",
     "iopub.status.busy": "2025-03-11T01:42:29.236321Z",
     "iopub.status.idle": "2025-03-11T01:42:29.240379Z",
     "shell.execute_reply": "2025-03-11T01:42:29.239657Z"
    }
   },
   "outputs": [],
   "source": [
    "ber_plot = PlotBER()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "b9f84ad5-dd49-4d86-b732-e4c08c59ee26",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:42:29.243708Z",
     "iopub.status.busy": "2025-03-11T01:42:29.243323Z",
     "iopub.status.idle": "2025-03-11T01:43:04.537036Z",
     "shell.execute_reply": "2025-03-11T01:43:04.536203Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "EbNo [dB] |        BER |       BLER |  bit errors |    num bits | block errors |  num blocks | runtime [s] |    status\n",
      "---------------------------------------------------------------------------------------------------------------------------------------\n",
      "     -2.5 | 1.1128e-01 | 9.2200e-01 |      933518 |     8388608 |        15106 |       16384 |         9.5 |reached target block errors\n",
      "    -2.25 | 7.9465e-02 | 7.8345e-01 |      666603 |     8388608 |        12836 |       16384 |         0.2 |reached target block errors\n",
      "     -2.0 | 4.9901e-02 | 5.8563e-01 |      418601 |     8388608 |         9595 |       16384 |         0.2 |reached target block errors\n",
      "    -1.75 | 2.6446e-02 | 3.6609e-01 |      221845 |     8388608 |         5998 |       16384 |         0.2 |reached target block errors\n",
      "     -1.5 | 1.1842e-02 | 1.9043e-01 |       99339 |     8388608 |         3120 |       16384 |         0.2 |reached target block errors\n",
      "    -1.25 | 4.4521e-03 | 8.2947e-02 |       37347 |     8388608 |         1359 |       16384 |         0.2 |reached target block errors\n",
      "     -1.0 | 1.4632e-03 | 2.8625e-02 |       12274 |     8388608 |          469 |       16384 |         0.2 |reached target block errors\n",
      "    -0.75 | 3.2139e-04 | 7.3853e-03 |        2696 |     8388608 |          121 |       16384 |         0.2 |reached target block errors\n",
      "     -0.5 | 7.2658e-05 | 2.1210e-03 |        2438 |    33554432 |          139 |       65536 |         0.9 |reached target block errors\n",
      "    -0.25 | 1.9749e-05 | 4.3945e-04 |        2485 |   125829120 |          108 |      245760 |         3.3 |reached target block errors\n",
      "      0.0 | 2.5021e-06 | 6.9265e-05 |        1868 |   746586112 |          101 |     1458176 |        19.3 |reached target block errors\n"
     ]
    }
   ],
   "source": [
    "model1 = Model()\n",
    "\n",
    "ber_plot.simulate(model1,\n",
    "        np.arange(-2.5, 0.25, 0.25),\n",
    "        batch_size=4096,\n",
    "        max_mc_iter=1000,\n",
    "        num_target_block_errors=100,\n",
    "        legend=\"Uncorrelated\",\n",
    "        show_fig=False);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "a2a4c2f1-fd81-4544-a85a-46807d76ffbc",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2025-03-11T01:43:04.541276Z",
     "iopub.status.busy": "2025-03-11T01:43:04.541013Z",
     "iopub.status.idle": "2025-03-11T01:44:07.255292Z",
     "shell.execute_reply": "2025-03-11T01:44:07.254693Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "EbNo [dB] |        BER |       BLER |  bit errors |    num bits | block errors |  num blocks | runtime [s] |    status\n",
      "---------------------------------------------------------------------------------------------------------------------------------------\n",
      "      0.0 | 7.2504e-02 | 7.2064e-01 |      608209 |     8388608 |        11807 |       16384 |         7.5 |reached target block errors\n",
      "     0.25 | 4.7057e-02 | 5.3937e-01 |      394745 |     8388608 |         8837 |       16384 |         0.2 |reached target block errors\n",
      "      0.5 | 2.6320e-02 | 3.4680e-01 |      220786 |     8388608 |         5682 |       16384 |         0.2 |reached target block errors\n",
      "     0.75 | 1.3891e-02 | 2.0404e-01 |      116526 |     8388608 |         3343 |       16384 |         0.2 |reached target block errors\n",
      "      1.0 | 6.1402e-03 | 9.6191e-02 |       51508 |     8388608 |         1576 |       16384 |         0.2 |reached target block errors\n",
      "     1.25 | 2.3291e-03 | 4.2114e-02 |       19538 |     8388608 |          690 |       16384 |         0.2 |reached target block errors\n",
      "      1.5 | 7.8285e-04 | 1.5137e-02 |        6567 |     8388608 |          248 |       16384 |         0.2 |reached target block errors\n",
      "     1.75 | 2.6806e-04 | 4.8014e-03 |        6746 |    25165824 |          236 |       49152 |         0.7 |reached target block errors\n",
      "      2.0 | 6.7088e-05 | 1.3699e-03 |        5065 |    75497472 |          202 |      147456 |         2.0 |reached target block errors\n",
      "     2.25 | 1.3119e-05 | 2.9922e-04 |        4512 |   343932928 |          201 |      671744 |         9.1 |reached target block errors\n",
      "      2.5 | 2.8307e-06 | 6.6314e-05 |        4393 |  1551892480 |          201 |     3031040 |        41.3 |reached target block errors\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABVgAAAOECAYAAABU1lq/AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjEsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvc2/+5QAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4FNX+x/H3bnpIIRAg1FAFFFA6iHRBQERBBUSUIgheVBT79V4B6+9aro2AoggoWECaFCnSewldQGroLRBSSNvszu+PvVkTUkhCwiTh83qePOycOXPmu7tzNuS7Z86xGIZhICIiIiIiIiIiIiK5ZjU7ABEREREREREREZGiSglWERERERERERERkTxSglVEREREREREREQkj5RgFREREREREREREckjJVhFRERERERERERE8kgJVhEREREREREREZE8UoJVREREREREREREJI+UYBURERERERERERHJIyVYRURERERERERERPJICVYRERGRG1C1alUsFgsWi4VVq1aZHU6BSn2eFouFiIgIs8PJk4iIiHTPQ0RERETkRinBKiIiIsXawIED0yXUMvvx9PSkTJkyNGnShGeeeYZVq1ZhGIbZoWdq+/btrrgffvjhdPvatWt33efq7e1NuXLluPvuu3nxxRfZtm2bSc/k1pST9yi7n+KexC9oab8QyezH19eX8uXL07p1a1566SXCw8PNDllERESKACVYRURE5JZns9mIjIwkPDycr776ivbt29O+fXuOHTuWL+1PmTLFlcBp167dDbU1f/581+Pu3bvn+vikpCQuXLjAxo0b+eyzz2jatCkPP/wwkZGRNxSXSHGQkJDAuXPnWLduHf/9739p0qQJ3bt359y5c6bEM2bMGNdnx8CBA02JQURERK7P3ewARERERG6WoKAgmjVrlqE8Pj6ekydPprvtffXq1bRp04aNGzdSqVKlmxhl9lITrFarlfvvvz/LehUqVKB+/foZyq9evcqxY8c4ffq0q2z27NkcPnyYdevW4e/vn/9BS6ayeo+yU6pUqQKK5tZTo0YNatasma7s6tWrHD58OF1CdeHChbRv357169fr9RcREZFMKcEqIiIit4wGDRqwePHiLPcfOnSIV155hXnz5gFw6tQpXnjhBX799dcsj7mZc5GePXuW7du3A9C0aVPKli2bZd1OnToxZcqULPfv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8puPjw8LFiygbdu2gDPJ2qdPH3777bcCOV9R1LdvX9ct6MnJydedq3Pr1q3MnDnTtf3UU08VZHgF4vnnnycgIABwjiJNe82mKl++vOvx+vXrs21v8+bN6ZLO2Un72XH48OEcHTNkyBD8/PwA5+fNBx98kKPjREREJO+UYBURERH5H5vNxowZM2jXrl261bjfeOMNLBZLntutX78+7u7uAFy6dInvv//+usfMnz/f9bh79+55PndW4uPjmThxIvfff3+6W5XffPPNG2o37fE7d+5k4MCBJCcnZ6gXExNDr169OHPmDOAcvfrGG29k2uagQYOoW7cu4Exw9erVi4ULF2YbR3h4eJ5u8ff19WXhwoWukZo2m41HH300XcL7VlayZEn+8Y9/uLbDwsIICwvLtO7Bgwfp1auX6/qqUKECgwYNuilx5qeSJUumS/LPnj3btaBVqtSkPMCMGTNYvnx5pm1t376dHj165Gh6AEg/JcPOnTtZuXLldY8pVaoU//rXv1zbb731FmPHjr3uKNsrV67wxRdf0KdPnxzFJiIiIn9zNzsAERERkZtl9+7ddOnSJUO53W7nypUr7Nu3j/j4+HT7Hn744XQJpbwICAige/fuzJ07F4CBAwfy/vvvU6NGDTw9PV313n33XerVq8eFCxdc81s2bNiQihUr5vqcy5Yty/S5pqSkcOnSJfbt25ch8fnCCy/c8GjZ+++/n0GDBjF58mTAeYtyeHg4Tz/9NPXr18fhcBAeHs5XX32Vbt7KV199lWbNmmXapre3N7/88gt33303cXFxxMbG0r17dzp06ECvXr2oVasWPj4+XLx4kR07drBw4UJ27NjByJEjefjhh3P9HEqUKMGiRYvo0qUL69evJzk5mYcffpg5c+bQrVu3vL0wmcjqPcpOz549GTZsWL7FkBdvv/02ixYtYt++fYBzhPGcOXPo378/1apVIyYmhhUrVjBx4kRXf7JarUyaNMk1ErSoefHFF/n888+5evUqhmHw3nvv8eOPP7r29+nThzfeeINz585ht9vp2rUrQ4YMoUuXLgQFBXH27FkWLVrE9OnTSUlJ4b777mPfvn2cPHky2/PWrVuXu+66i507d2IYBh06dKBBgwZUrlzZ9aUNwMSJE9ON/n711VfZsmULs2fPds0dO2nSJB577DGaN29OcHAwKSkpXL58mb1797Jx40ZWrlyJzWajefPm+f8CioiIFHeGiIiISDE2YMAAA8j1j6enpzF69GgjOTk52/ZDQ0Ndx6xcuTLLeseOHTMqVaqU7TlTj//uu+9cZf/+979z/Fzbtm2bp+caEBBgjBs37rrtpz3m2LFjWdZLTk42+vbtm+PzP/fcc4bD4bju+cPDw42QkJActzty5MgMbRw7dixdnezExMQYLVu2dNX18vIyFi9efN04s5PX9yi/nlNakydPdh3Ttm3bXD2PM2fOGPXq1ctRzB4eHsZPP/2UbXujR4921R8wYECuYsmNtP119OjRuTr25Zdfdh1rtVqNv/76K93+5cuXG56entd9PW6//XbjwoULOf7s2Lp1q1GyZMls28ysP9psNmPEiBG5vsaaN2+eq9dFREREDENTBIiIiMgtz2Kx4O/vT7Vq1XjwwQf59NNPOXnyJGPGjMHDwyNfzlG1alV27drFBx98QJs2bShbtmy60atppZ0eIL/nX7VarQQGBnLbbbfRu3dvJk6cyMmTJxkxYkS+ncPDw4Mff/yRadOmUaNGjSzr1atXj99++40vvvgiR1MwNGrUiH379vHqq69mu1CSt7c3PXv2pH///nkJ38Xf35/Fixe7RvQlJSXx0EMPsWzZshtqtzgoX748mzdvZvTo0QQFBWVax2q10rVrV7Zv307fvn1vcoT57+WXX3YtNudwOHjvvffS7e/QoQOrVq2ifv36mR7v6+vL8OHD2bJlC2XKlMnxeZs0acLevXt58803adGiBaVKlUo3ejUr7u7ujBs3jrVr19K5c2fc3NyyrGuxWGjYsCHvvPNOujlzRUREJGcshpGDVRZERERE5KZISkoiODiYuLg4QkJCOHPmzA3N/1oY7Nmzh+3bt3PhwgUsFgvlypWjRYsW1KpVK89t2u12Nm3axIEDB7h48SLgnHuyTp06NG3a1JUIk4KXkpLChg0bOHDgAJcuXcLX15eKFSvStm3bXCUSiwvDMNi2bRvbtm0jKiqKoKAgKleuTLt27VyLT5khOjqadevWcfLkSS5fvoy7uzslS5akZs2aNGjQgODgYNNiExERKeqUYBUREREpRJYsWeKal/Opp57i22+/NTkiERERERHJjqYIEBERESlE0k4P0L17dxMjERERERGRnLj+5D0iIiIictM0aNCA0aNHA9CpUyeToxERERERkevRFAEiIiIiIiIiIiIieaQpAkRERERERERERETySFMEFEMOh4MzZ87g7+9f5FcdFhERERERERERudkMwyA2NpYKFSpgtWY/RlUJ1mLozJkzVK5c2ewwREREREREREREirSTJ09SqVKlbOsowVoM+fv7A84LICAgwORoRDKy2WwsXbqUzp074+HhYXY4Irck9UMRc6kPiphP/VDEXOqDUtjFxMRQuXJlV54tO0qwFkOp0wIEBAQowSqFks1mw9fXl4CAAP0iFTGJ+qGIudQHRcynfihiLvVBKSpyMv2mFrkSERERERERERERySMlWEVERERERERERETySAlWERERERERERERkTxSglVEREREREREREQkj5RgFREREREREREREckjJVhFRERERERERERE8kgJVhEREREREREREZE8UoJVREREREREREREJI+UYBURERERERERERHJIyVYRURERERERERERPLI3ewARERERERERCRvDMMgJSUFu91udigiuWKz2XB3dycxMVHXr+Q7Nzc33N3dsVgsN+V8SrCKiIiIiIiIFDGGYRAVFcWVK1dISkoyOxyRXDMMg5CQEE6ePHnTkmBya/Hy8qJkyZIEBQUV+DWmBKuIiIiIiIhIEXP+/HmioqLw9/enTJkyN3Wklkh+cDgcxMXF4efnh9WqGSwl/6SO7I+Ojub8+fMkJycTEhJSoOdUglVERERERESkCImOjiYqKory5ctTsmRJs8MRyROHw0FycjLe3t5KsEqB8Pf3JyoqinPnzuHj40NgYGCBnUtXsIiIiIiIiEgREhMTg6+vr5KrIiLXERQUhK+vLzExMQV6HiVYRURERERERIoIh8PB1atX8fPzMzsUEZEiwc/Pj/j4eBwOR4GdQwlWERERERERkSIiJSUFwzDw9vY2OxQRkSLB29sbh8NBSkpKgZ1DCVYRERERERGRIiJ1BJbmrBQRyZnUz0uNYBURERERERERF4vFYnYIIiJFws34vFSCVURERERERERERCSPlGAVERERERERERERySMlWEVERERERERERETySAlWERERERERERERkTxSglVERERERERERIq8MWPGYLFYbslF4KpWrYrFYmHgwIFmh3JLUoJVRERERERERCQTAwcOdCXsIiIicnRMaqKratWqBRqbiBQeSrCKiIiIiIiIiIjkQLt27bBYLLRr187s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b95MeHg48+bNY8iQIdx3333YbDasVivfffddruZ6zI133nmH+vXrA861XJo2bco333zDpk2b2L59O7/99huvvPIK1apVY9GiRemOHT58OC1btgScc5J27NiRWbNmsX37dhYuXMjDDz/MO++8A0CNGjX497//XSDPITNvv/02zZs3B+Dzzz+nUaNGhIWFsX79enbu3MnKlSsZN24cDz30EFWqVOGrr77KVftPPPEE4Ezs3n///bz//vusWbOGLVu2MGHCBO666y5WrVpFq1atsm0nNTF74cIFRo0aRXh4OIcPH+bw4cPppn308vJixowZeHl5ERcXR4cOHejfvz+//vor4eHhbN26ld9++43Ro0fToEEDWrduzZ49e9Kdq1y5cq73IyIigsaNGxMWFsbWrVtZu3Ytb7zxBvfddx8VK1akTJkyuXo9JH9pBGsaqd9CgHOy6AYNGmRa7/Tp05keI0Vb1eASvNqlDqM63cbKvy7yy9YTrPzrInaHgWHA2kORrD0USakSnvRqWJE+TStTq5wS7CIiIiIiIsVZ+fLlWbNmDT179mT//v0sXbqUpUuXZlq3ZMmSTJs2jfbt2xdYPL6+vqxYsYKHH36YNWvWEB4eztNPP52jY93c3FiwYAE9evRg/fr1rFixghUrVmSoV7duXX7//fdMpxAoKF5eXixbtoyBAwcye/Zsdu3axbPPPptl/dzeBt+0aVPGjh3L6NGjuXLlCm+++WaGOi+99BL16tVj/fr1WbbTt29fPvjgA44ePcpnn33GZ5995toXGhqabvrHFi1asGrVKnr37s3JkyeZPn0606dPz9Vzeumllzhx4gRffPEFp0+fzvCaBAcHM3PmTB599NFsnr0UNI1gTaNu3bquYdR79+7Nsl7qvpCQkHxb4EoKD3c3K51uL8e3A5qy4fUOvHJfbaqkmR7g8tVkvl13jE6fruHhCRuYse0k8ck5nyRZREREREREipbatWuze/dupk2bxiOPPEJoaCi+vr54enoSEhJCx44d+eijj4iIiOD+++8v8HiCg4NZvXo1s2fP5pFHHqFSpUp4eXnh7e1N9erVefTRR5k+fXqmi2CVKlWKNWvW8P3339OlSxfKlSuHh4cHpUuXpl27dowbN46dO3emWxTrZvH392fWrFmsXbuWIUOGULt2bfz9/XF3d6dUqVI0bdqUESNGsGjR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",
      "text/plain": [
       "<Figure size 1600x1000 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "r_tx = exp_corr_mat(0.4, num_tx_ant)\n",
    "r_rx = exp_corr_mat(0.7, num_rx_ant)\n",
    "model2 = Model(KroneckerModel(r_tx, r_rx))\n",
    "\n",
    "ber_plot.simulate(model2,\n",
    "        np.arange(0,2.6,0.25),\n",
    "        batch_size=4096,\n",
    "        max_mc_iter=1000,\n",
    "        num_target_block_errors=200,\n",
    "        legend=\"Kronecker model\");"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.16"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
